package com.itheima.d2_buffered_stream;

import java.io.*;

/*
    目标：观察原始流和缓冲流的性能。
 */
public class TimeTest4 {
    public static void main(String[] args) {
        long star = System.currentTimeMillis();
        //-------------
        try {
         // copy1();//拷贝过程耗时598毫秒
         copy2();//拷贝过程耗时2791毫秒
        } catch (IOException e) {
            e.printStackTrace();
        }
        //-----------------------
        long end = System.currentTimeMillis();
        System.out.println("拷贝过程耗时" + (end - star) + "毫秒");
    }

    //按照普通的字节流复制较大的视频文件
    public static void copy1() throws IOException {
        String source="D:\\综合数据缓存\\方法\\04.javase之集合框架和源码解读\\317.三百一十七节.Map集合中的常用方法.mp4";//源
        String dest="D:\\test\\itheima-img\\ceshi1212.mp4";//目标
        FileReader fis=new FileReader(source);
        FileWriter fos=new FileWriter(dest);

        char [] buf=new char[1024*1024];
        int len=-1;

        while ((len = fis.read(buf)) != -1){
            fos.write(buf);
        }
        fis.close();
        fos.close();
    }

    //按照字节缓冲流复制较大的视频文件
    public static void copy2() throws IOException {
        String source="D:\\综合数据缓存\\方法\\04.javase之集合框架和源码解读\\317.三百一十七节.Map集合中的常用方法.mp4";//源
        String dest="D:\\test\\itheima-img\\ceshimps.mp4";//目标
        BufferedReader br=new BufferedReader(new FileReader(source));
        BufferedWriter bw=new BufferedWriter(new FileWriter(dest));

        String line = null;

        while ((line= br.readLine())!=null){
            bw.write(line);
        }

        br.close();
        bw.close();

    }



}










